/******************************************************************************

                              Online C++ Compiler.
               Code, Compile, Run and Debug C++ program online.
Write your code in this editor and press "Run" button to compile and execute it.

*******************************************************************************/

#include <iostream>
#include <vector>
#include <string>
#include <cstring>
using namespace std;
int len(string st){
    string str = "абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ";
    int a = 0;
    int n = 0;
    int k1;
    for (auto buk: st){
        a++;
        k1 = str.find(buk);
        if(k1 != -1){
            n++;
        }
    }
    a = a - (n / 2);
    return a;
}
int main(){
   string a;
   cout << "Введите слова через пробел:";
   getline(cin,a);
   vector < string > words;
   string kir = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЧШЩЪЫЬЭЮЯ";
   string eng = "abcdefghijklmnopqrstuvwxyz";
   string word ="";
   for (char n: a){
       if(n == ' '){
        words.push_back(word);
        word = "";
      }else{
        word += n;
      }
   }
   words.push_back(word);
   if(word.size()<= 1){
      cout << "Мало данных для анализа" << endl;
   }else{
     int wordCount= words.size();
     int kirilCount = 0;
     int engCount = 0;
     int It3Count = 0;
     int defCount = 0;
     string longestWord = "";
     for(string w: words){
        int k = kir.find(w[0]);
        if(k != -1 && isupper(w[0]))
   {
           kirilCount++;
        }
        for(char n: w){
            int num = eng.find(tolower(n));
            if (num != -1){
                engCount++;
                break;
            }
        }
        if(len(w) <= 3){
          It3Count++;
        }
        if(w.find('-')!= string::npos){
           defCount++;    
        }
        if (len(w) > len(longestWord)){
            longestWord = w;
        }
   }   
    cout << "Кол-во слов:" << wordCount <<endl;
    cout << "Кол-во слов с заглавной кириллической буквы:" << kirilCount << endl;
    cout << "Кол-во слов,содержащих латинский символ:" << engCount <<endl;      
    cout << "Кол-во слов,не превышающих 3 символа:" << It3Count << endl;
    cout << "Кол-во слов,в составе которых имеется дефис:"<< defCount << endl;
    cout << endl;
    cout << "Самое длинное слово:" << longestWord << endl;
    cout << "Длина слова:" << len(longestWord) << endl;
   } 
   return 0;
}   
            
            
            
            
            
            
            
        
       
       
    
     
     
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
          
          
          
          
          
          
     
  
   
   
   
   
   
   
   
   
   
   
   